home *** CD-ROM | disk | FTP | other *** search
/ Ham Radio 2000 #1 / Ham Radio 2000.iso / ham2000 / packet / ms_exe / toa.asc < prev    next >
Encoding:
Text File  |  1990-05-23  |  2.5 KB  |  128 lines

  1. 'TOA.BAS
  2. 'this program calculates the optimum angle of take-off and arrival
  3. 'for meteor-burst communications between two sites. The height of
  4. 'the reflecting meteor trails is taken as 100 kilometers.
  5. 'Reflections are assumed to occur at mid-path, which results in
  6. 'the angle of take-off equalling the angle of arrival.
  7. '
  8. 'Program last revised: May 23, 1990
  9.  
  10. GOSUB TITLE
  11.  
  12.  
  13. MENU:
  14. CLS
  15.      PRINT "╔═══════════════════════════════════════════════════════════════╗"
  16.      PRINT "║           ANGLE OF TAKE OFF AND ARRIVAL - MODULE 5            ║"
  17.      PRINT "╚═══════════════════════════════════════════════════════════════╝"
  18.  
  19.  
  20.  
  21. PRINT
  22. PRINT
  23. PRINT "CHOOSE:"
  24. PRINT
  25. PRINT "    1. ENGLISH MEASURE - STATUTE MILES"
  26. PRINT "    2. METRIC MEASURE - KILOMETERS"
  27. PRINT
  28. INPUT "                   ENTER CHOICE 1 OR 2: "; U%
  29.  
  30. IF U% = 1 GOTO ENTERENGLISH
  31.  
  32. PRINT
  33. PRINT
  34. INPUT "ENTER DISTANCE BETWEEN SITE A AND SITE B (KILOMETERS): "; D#
  35. GOTO CALCA
  36.  
  37.  
  38. ENTERENGLISH:
  39.  
  40. PRINT
  41. PRINT
  42. INPUT "ENTER DISTANCE BETWEEN SITE A AND SITE B (MILES): "; D#
  43.     
  44.     D# = 1.609344 * D#'convert miles to kilometers
  45.  
  46. GOTO CALCA
  47.  
  48.  
  49. CALCA:
  50.  
  51.     'main calculation routine
  52.  
  53. R = 6370           'nominal earth radius in km.
  54. PI = 4 * ATN(1)
  55. H = 100            'nominal height of reflection in km.
  56. ANGLEA# = .5 * D# / R
  57. BPLUSC = PI - ANGLEA#
  58. B = R + H
  59. C = R
  60. BMINUSC = 2 * ATN(((B - C) / (B + C)) * TAN(.5 * (PI - ANGLEA#)))
  61. ANGLEB# = .5 * (BPLUSC + BMINUSC)
  62. TOA# = ANGLEB# - PI / 2
  63. TOA# = TOA# * (180 / PI)
  64.  
  65.  
  66. RESULT:
  67.  
  68. PRINT
  69. PRINT
  70. PRINT "OPTIMUM ANGLE OF TAKE-OFF AND ARRIVAL FOR MID-PATH"
  71. PRINT "REFLECTION POINT AT 100 km ALTITUDE:"
  72. PRINT
  73.  
  74. IF ABS(TOA#) < 0 THEN PRINT "GOTO FAR"
  75.  
  76. PRINT USING "           ##.# DEGREES"; TOA#
  77. PRINT
  78.       IF TOA# < 0 THEN GOSUB TOOFAR
  79.  
  80.  
  81. PRINT "CHOOSE:"
  82. PRINT
  83. PRINT "    1. CONTINUE WITH NEW CALCULATION"
  84. PRINT "    2. QUIT"
  85. PRINT "                 ENTER CHOICE 1 OR 2: ";
  86. INPUT ANS%
  87. IF ANS% = 1 THEN GOTO MENU ELSE GOTO ENDING
  88.  
  89.  
  90. TOOFAR:
  91.  
  92.    PRINT "** NEGATIVE ELEVATION ANGLE INDICATES DISTANCE BEYOND RANGE **"
  93.    PRINT
  94.  
  95. RETURN
  96.  
  97.  
  98. ENDING:
  99. PRINT
  100. PRINT "                       ≡≡≡ PROGRAM COMPLETED ≡≡≡"
  101. END
  102.  
  103.  
  104.  
  105. TITLE:
  106. 'opening screen for meteor burst programs
  107. CLS
  108.  
  109. LOCATE 5, 25
  110. PRINT "Supplemental Computer Programs"
  111. LOCATE 6, 38
  112. PRINT "to"
  113. LOCATE 7, 27
  114. PRINT "METEOR BURST COMMUNICATION"
  115. LOCATE 9, 38
  116. PRINT "by"
  117. LOCATE 10, 31
  118. PRINT "Jacob Z. Schanker"
  119. LOCATE 14, 24
  120. PRINT "COPYRIGHT 1990 ARTECH HOUSE, INC."
  121. LOCATE 22, 25
  122. PRINT "<< Press any key to continue >>"
  123. WHILE INKEY$ = ""
  124. WEND
  125. CLS
  126. RETURN
  127.  
  128.